v = fread("ROUTPUTQvQd.csv")
m = 1947 + 284/4
y = seq(1947, m - 0.25, 0.25)
v$DATE = y
v = melt(v, id.vars= "DATE")
v$value = gsub("#N/A","", v$value)
v$value = as.numeric(v$value)
v$variable = as.character(v$variable)
f = function(x){x/x[1]}
index = v[, .(index = f(value)), by = variable]
v$index = index$index
v = na.omit(v)
# growth rate function
gr = function(x){
d = rev(end(x))
g = x[ -d[1]] / x[ -d[2] ]
g = c(1, g)
return(g)
}
rate = v[, gr(value), by = variable]
v$rate = rate$V1
# low growth rate
low.gr = v[, min(rate), by = DATE]
# extend series
series = unique(v$variable)
l = length(series)
y = unique(v$DATE)
final = NULL
for(i in 1:l){
sub  = v[variable == series[i]]
y.max = tail(sub$DATE,1)
rate.sub = low.gr[DATE > y.max]
predict = cumprod(rate.sub$V1)*tail(sub$index,1)
predict = c(sub$index, predict)
output = data.table(series = series[i], year = y, gdp = predict)
final = rbind(final, output)
}
space = rep(NA, 3)
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
space = cbind(NA, NA, NA)
View(space)
final = rbind(final, space,  output)
space = data.table(NA, NA, NA)
final = rbind(final, space,  output)
View(output)
final = rbind(final,   output)
s = data.table(series = NA, year = NA, gdp = NA)
final = rbind(final, s,  output)
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
library(data.table)
library(ggplot2)
library(magrittr)
setwd("~/Desktop/Empirical Research/GDP/Vintage")
# clean data
v = fread("ROUTPUTQvQd.csv")
m = 1947 + 284/4
y = seq(1947, m - 0.25, 0.25)
v$DATE = y
v = melt(v, id.vars= "DATE")
v$value = gsub("#N/A","", v$value)
v$value = as.numeric(v$value)
v$variable = as.character(v$variable)
f = function(x){x/x[1]}
index = v[, .(index = f(value)), by = variable]
v$index = index$index
v = na.omit(v)
# growth rate function
gr = function(x){
d = rev(end(x))
g = x[ -d[1]] / x[ -d[2] ]
g = c(1, g)
return(g)
}
rate = v[, gr(value), by = variable]
v$rate = rate$V1
# low growth rate
low.gr = v[, min(rate), by = DATE]
# extend series
series = unique(v$variable)
l = length(series)
y = unique(v$DATE)
final = NULL
space = data.table(series = NA, year = NA, gdp = NA)
for(i in 1:l){
sub  = v[variable == series[i]]
y.max = tail(sub$DATE,1)
rate.sub = low.gr[DATE > y.max]
predict = cumprod(rate.sub$V1)*tail(sub$index,1)
predict = c(sub$index, predict)
output = data.table(series = series[i], year = y, gdp = predict)
series = strsplit(output$series, "Q") %>% unlist()
series = gsub("[^0-9]", "", series) %>% as.numeric()
odd = seq(1, length(series), 2)
even = seq(2, length(series), 2)
quarter = series[even]/4
year = series[odd] + quarter  + 1900
year[year< 1940] = year[year< 1940] + 100
output$series_year = year
final = rbind(final, space,  output)
}
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
s = unique(final$series)
l = length(s)
i = 1
sub = subset(final, series == s[i])
test = rbind(NA, sub)
space = data.table(NA, NA, NA, NA)
View(space)
names(space) <- names(final)
test = rbind(space, sub)
View(test)
result = NULL
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
View(result)
library(data.table)
library(ggplot2)
library(gridExtra)
library(reshape2)
library(matrixStats)
library(reshape2)
text.size = 10
setwd("/home/blair/Desktop/Empirical Research/BLS_prices")
d = fread("prices.csv")
d$name = factor(d$name)
d$name =  reorder(d$name, -d$index, mean)
p.log = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous(breaks = seq(1900, 2060, 20)) +
scale_y_log10("Price Index (1935 = 1)") +
ggtitle("log scale") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.position =  "none",
plot.title = element_text(face = "bold", hjust = 0.5, vjust = -2),
axis.line = element_line(color = "black"),
axis.title = element_blank(),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size*0.8, family="Times"))
p = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous("", breaks = seq(1900, 2050, 10)) +
scale_y_continuous("Price Index (1935 = 1)") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.text = element_text(size = rel(0.7)),
legend.key.height = unit(0.6, "cm"),
legend.title = element_blank(),
axis.line = element_line(color = "black"),
axis.title.x= element_text(vjust=-0.4, size=rel(0.9)),
axis.title.y = element_text(vjust= 1, size=rel(0.9)),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size, family="Times"))
inset = ggplotGrob(p.log)
p = p + annotation_custom(grob = inset, xmin = 1930, xmax = 1980, ymin = 25, ymax = 53)
# gdp
################################################################################
setwd("/home/blair/Desktop/Empirical Research/GDP/Vintage")
g = fread("vintage_gdp.csv")
gdp = ggplot() +
geom_path(data = g, aes(x = year, y = gdp, col = series_year))
gdp
source('~/Desktop/Empirical Research/GDP/Vintage/vintage_workbook.R')
library(data.table)
library(ggplot2)
library(gridExtra)
library(reshape2)
library(matrixStats)
library(reshape2)
text.size = 10
setwd("/home/blair/Desktop/Empirical Research/BLS_prices")
d = fread("prices.csv")
d$name = factor(d$name)
d$name =  reorder(d$name, -d$index, mean)
p.log = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous(breaks = seq(1900, 2060, 20)) +
scale_y_log10("Price Index (1935 = 1)") +
ggtitle("log scale") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.position =  "none",
plot.title = element_text(face = "bold", hjust = 0.5, vjust = -2),
axis.line = element_line(color = "black"),
axis.title = element_blank(),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size*0.8, family="Times"))
p = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous("", breaks = seq(1900, 2050, 10)) +
scale_y_continuous("Price Index (1935 = 1)") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.text = element_text(size = rel(0.7)),
legend.key.height = unit(0.6, "cm"),
legend.title = element_blank(),
axis.line = element_line(color = "black"),
axis.title.x= element_text(vjust=-0.4, size=rel(0.9)),
axis.title.y = element_text(vjust= 1, size=rel(0.9)),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size, family="Times"))
inset = ggplotGrob(p.log)
p = p + annotation_custom(grob = inset, xmin = 1930, xmax = 1980, ymin = 25, ymax = 53)
# gdp
################################################################################
setwd("/home/blair/Desktop/Empirical Research/GDP/Vintage")
g = fread("vintage_gdp.csv")
gdp = ggplot() +
geom_path(data = g, aes(x = year, y = gdp, col = series_year))
gdp
gdp = ggplot() +
geom_path(data = g, aes(x = year, y = gdp, col = series_year)) +
scale_color_gradientn(values = rainbow(8))
gdp = ggplot() +
geom_path(data = g, aes(x = year, y = gdp, col = series_year)) +
scale_color_gradientn(colors = rainbow(8))
gdp
library(data.table)
library(ggplot2)
library(magrittr)
setwd("~/Desktop/Empirical Research/GDP/Vintage")
# clean data
v = fread("ROUTPUTQvQd.csv")
m = 1947 + 284/4
y = seq(1947, m - 0.25, 0.25)
v$DATE = y
v = melt(v, id.vars= "DATE")
v$value = gsub("#N/A","", v$value)
v$value = as.numeric(v$value)
v$variable = as.character(v$variable)
f = function(x){x/x[1]}
index = v[, .(index = f(value)), by = variable]
v$index = index$index
v = na.omit(v)
plot(v$DATE, v$index)
library(data.table)
library(ggplot2)
library(gridExtra)
library(reshape2)
library(matrixStats)
library(reshape2)
text.size = 10
setwd("/home/blair/Desktop/Empirical Research/BLS_prices")
d = fread("prices.csv")
d$name = factor(d$name)
d$name =  reorder(d$name, -d$index, mean)
p.log = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous(breaks = seq(1900, 2060, 20)) +
scale_y_log10("Price Index (1935 = 1)") +
ggtitle("log scale") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.position =  "none",
plot.title = element_text(face = "bold", hjust = 0.5, vjust = -2),
axis.line = element_line(color = "black"),
axis.title = element_blank(),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size*0.8, family="Times"))
p = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous("", breaks = seq(1900, 2050, 10)) +
scale_y_continuous("Price Index (1935 = 1)") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.text = element_text(size = rel(0.7)),
legend.key.height = unit(0.6, "cm"),
legend.title = element_blank(),
axis.line = element_line(color = "black"),
axis.title.x= element_text(vjust=-0.4, size=rel(0.9)),
axis.title.y = element_text(vjust= 1, size=rel(0.9)),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size, family="Times"))
inset = ggplotGrob(p.log)
p = p + annotation_custom(grob = inset, xmin = 1930, xmax = 1980, ymin = 25, ymax = 53)
# gdp
################################################################################
setwd("/home/blair/Desktop/Empirical Research/GDP/Vintage")
g = fread("vintage_gdp.csv")
gdp = ggplot() +
geom_path(data = g, aes(x = year, y = gdp, col = series_year)) +
scale_color_gradientn(colors = rainbow(8)) +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.text = element_text(size = rel(0.7)),
legend.key.height = unit(0.6, "cm"),
legend.title = element_blank(),
axis.line = element_line(color = "black"),
axis.title.x= element_text(vjust=-0.4, size=rel(0.9)),
axis.title.y = element_text(vjust= 1, size=rel(0.9)),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size, family="Times"))
gdp
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
gdp
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
gdp
gdp = ggplot() +
geom_path(data = g, aes(x = year, y = gdp, col = series_year)) +
scale_color_gradientn("Base Year", colors = rainbow(8)) +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.text = element_text(size = rel(0.7)),
legend.key.height = unit(0.6, "cm"),
axis.line = element_line(color = "black"),
axis.title.x= element_text(vjust=-0.4, size=rel(0.9)),
axis.title.y = element_text(vjust= 1, size=rel(0.9)),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size, family="Times"))
gdp
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
shadow  = fread("Shadow GDP.csv")
setwd("/home/blair/Desktop/Empirical Research/GDP/Vintage")
g = fread("vintage_gdp.csv")
shadow  = fread("Shadow GDP.csv")
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
View(g)
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
source('~/Desktop/Empirical Research/Plots/aggregation/prices.R')
p = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous("", breaks = seq(1900, 2050, 20)) +
scale_y_continuous("Price Index (1935 = 1)") +
ggtitle("A.  Divergent Price Change") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.text = element_text(size = rel(0.7)),
legend.key.height = unit(0.4, "cm"),
legend.key.width =  unit(0.3, "cm"),
legend.title = element_blank(),
legend.position = c(0.2, 0.6),
plot.title = element_text(face = "bold", hjust = 0.5, size = rel(0.9), vjust = -0.5),
axis.line = element_line(color = "black"),
axis.title.x= element_text(vjust=-0.4, size=rel(0.9)),
axis.title.y = element_text(vjust= 1, size=rel(0.9)),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size, family="Times"))
p
library(data.table)
library(ggplot2)
library(gridExtra)
library(reshape2)
library(matrixStats)
library(reshape2)
text.size = 10
setwd("/home/blair/Desktop/Empirical Research/BLS_prices")
d = fread("prices.csv")
#d$name = gsub(" ", "\n", d$name)
d$name = factor(d$name)
d$name =  reorder(d$name, -d$index, mean)
p.log = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous(breaks = seq(1900, 2060, 20)) +
scale_y_log10("Price Index (1935 = 1)") +
ggtitle("log scale") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.position =  "none",
legend.margin=margin(0,0,0,-5),
plot.title = element_text(face = "bold", hjust = 0.5, vjust = -2, size = rel(0.9)),
axis.line = element_line(color = "black"),
axis.title = element_blank(),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size*0.8, family="Times"))
p = ggplot() +
geom_line(data = d, aes(x  = year, y = index, col = name)) +
scale_x_continuous("", breaks = seq(1900, 2050, 20)) +
scale_y_continuous("Price Index (1935 = 1)") +
ggtitle("A.  Divergent Price Change") +
theme_bw() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.text = element_text(size = rel(0.7)),
legend.key.height = unit(0.4, "cm"),
legend.key.width =  unit(0.3, "cm"),
legend.title = element_blank(),
legend.position = c(0.2, 0.6),
plot.title = element_text(face = "bold", hjust = 0.5, size = rel(0.9), vjust = -0.5),
axis.line = element_line(color = "black"),
axis.title.x= element_text(vjust=-0.4, size=rel(0.9)),
axis.title.y = element_text(vjust= 1, size=rel(0.9)),
axis.text.x = element_text(margin=margin(5,5,3,0,"pt")),
axis.text.y = element_text(margin=margin(3,5,0,3,"pt")),
axis.ticks.length = unit(-0.7, "mm"),
text=element_text(size = text.size, family="Times"))
#inset = ggplotGrob(p.log)
#p = p + annotation_custom(grob = inset, xmin = 1930, xmax = 1980, ymin = 20, ymax = 53)
p
p
p
library(data.table)
library(here)
dir = here()
wd = paste(dir, "raw")
setwd(wd)
dir
wd
dir = here()
wd = paste(dir, "/raw", sep = "")
setwd(wd)
url = fread("urls.csv")
dir = here()
setwd(dir)
url = fread("urls.csv")
wd = paste(dir, "/raw", sep = "")
setwd(wd)
wd
source('~/Desktop/Supplementary Material/BLS_prices/download.R')
